Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

neo-devpack-dotnet #1

Open
wants to merge 745 commits into
base: master
Choose a base branch
from
Open

Conversation

bol-project
Copy link
Collaborator

No description provided.

shargon and others added 30 commits February 28, 2024 10:48
* Create coverlet json

* Fix lang preview

* Listen env var

* Expand variable

* Read test argument

* fix

* Fix init

* use env

* Expand env

* print

* Replace nuget compilation

* reduce changes

* fix

* Fix only source by exe

* Insert extern sequence points

* Check sequence point methods

* Check

* Clean

* Remove

* Remove !

* Remove double expand
* fixes on CATCH and ENDFINALLY

* fix methodEnd

* comments on Abort & Assert tests

* TryGetValue for performance

* set PUSHA target to itself

* correct branch return type

* correct branch return type

* Move basic optimizer

* clean changes

* Update tests/Neo.Compiler.CSharp.UnitTests/UnitTest_Abort.cs

* Change visibility

---------

Co-authored-by: Fernando Diaz Toledano <[email protected]>
* Some fixes

* Update TestEngine.cs

* Update TestBase.cs

* Update TestEngine.cs

* Add id to SmartContract storage

* Update TestEngine.cs

* Update TestEngine.cs

* Allow to use pointers

* Update

* Testing Syscall

* Update src/Neo.SmartContract.Testing/TestEngine.cs
* Update native contracts

* clean using

* Add ut

* Split ut

* clean test
Co-authored-by: Shargon <[email protected]>
* Add directory `Analysers`

* entry point analyser

---------

Co-authored-by: Shargon <[email protected]>
* Migrate current ut's

* Restore tests not related to a contract

* revert namespace change

* All artifacts

* revert address

* Migrate some UT

* format

* Migrate 3 ut

* migrate 2 ut

* fix namespace

* Remove SyscallTest

* Migrate 2 ut more

* Helper ut

* Two uts more

* Workflow

* Two ut more

* Oracle

* clean

* Rename contract and StdLib

* Runtime

* One ut more

* Native ut

* UT fail, how to send an interopInterface? :S

* Ut pointers

* Fix ut

* Clean and extend

* Contract UT

* TODO BlockchainTest

* Update csproj

* Fix conflicts

* clean

* Start with blockchain its

* Revert using short

* TODO Crypto

* Blockchain UT

* secp256k1

* Increase coverage

* Fix merge

* fix using sort

* Add Uint coverage

* Fix CurrentBlock

* previous from storage

* Update src/Neo.SmartContract.Testing/Native/LedgerContract.cs

* Persisting block

* clean

* Clean

* Clean
* Update natives

* Update submodule

* Update neo

* CommitteeAddress

* Update src/Neo.SmartContract.Testing/Native/OracleContract.cs

* Add in framework too

* Update src/Neo.SmartContract.Framework/Native/NEO.cs
* Keep native RoleManagement roles in sync with Neo core
  Add missing NeoFSAlphabetNode role. We should keep this list in sync
  with Core so that users are able to use these roles.

* Add documentation to native RoleManagement roles
   It's nice when user-facing things are well-documented.

Signed-off-by: Anna Shaleva <[email protected]>
* Keep native RoleManagement roles in sync with Neo core

Add missing NeoFSAlphabetNode role. We should keep this list in sync
with Core so that users are able to use these roles.

Signed-off-by: Anna Shaleva <[email protected]>

* Add documentation to native RoleManagement roles

It's nice when user-facing things are well-documented.

Signed-off-by: Anna Shaleva <[email protected]>

* Add P2PNotary node role for native RoleManagement contract

Port neo-project/neo#3172.

Signed-off-by: Anna Shaleva <[email protected]>

---------

Signed-off-by: Anna Shaleva <[email protected]>
Co-authored-by: Shargon <[email protected]>
* Add directory `Analysers`

* entry point analyser

* basic block analyser (tested but unused)

* fix tests

* Apply suggestions from code review

* Update tests/Neo.Compiler.CSharp.UnitTests/UnitTest_Optimizer/UnitTest_BasicBlock.cs

* Update src/Neo.Compiler.CSharp/Optimizer/Analysers/InstructionCoverage.cs

* fix ut test

* Remove generatedRegex

* string.IsNullOrEmpty

---------

Co-authored-by: Shargon <[email protected]>
Co-authored-by: Jimmy <[email protected]>
Co-authored-by: Jim8y <[email protected]>
* init

* Clean empty lines

* Clean empty lines

---------

Co-authored-by: Shargon <[email protected]>
* update

* update

* DeclarationPatternSyntax

* update

* Update Contract_Pattern.cs

* Apply suggestions from code review

---------

Co-authored-by: Shargon <[email protected]>
* add property method test

* format

* Update tests/Neo.Compiler.CSharp.TestContracts/Contract_PropertyMethod.cs

* update UT

* fix readonly set

* update comments

* add document reference

* fix comments

* remvoe static set. Its not supported by C#

* format

* remove constructor check as syntax analyzer will handle it.

---------

Co-authored-by: Shargon <[email protected]>
* #992

* add UT

* remvoe extra using

* update UT as chenzhitong suggests

* revert UT change and add UT tests
* fix recursivepattern

* fix support

* remvoe extra using

* Apply suggestions from code review

---------

Co-authored-by: Shargon <[email protected]>
* update

* Update SystemCall.cs

* Update SystemOperators.cs

* ut

* UT for CheckStandards
* add neo smart contract syntax analyzer

* update ID

* formar

* fix errors of id

* fix unused

* update readme

* fix path, namespace, and float type check

* update diable warning

* diable warning for code fix

* remove nowarn as it also diables the error highlight

* don't run on github CI

* do not compile analyzer

* fix build

* add more analyzer and also add code fix for multiple analyzers

* add out keyword code fix

* fix float double and out keyword

* verify name conflict, showing confilct

* check notify name

* Update src/Neo.SmartContract.Analyzer/CollectionTypesUsageAnalyzer.cs

Co-authored-by: Shargon <[email protected]>

* Update src/Neo.SmartContract.Analyzer/CharMethodsUsageAnalyzer.cs

Co-authored-by: Shargon <[email protected]>

* Optimization and clean code

* remove sample from solution build

* also remove from release

* add analyzer to `_deploy` and `_initial`

* fix double detection

* also ban decimal usage.

* add NEPStandard analyzer

* use framework NEP

* Fix errors in Examples.cs

* fix analyzer and add unit tests

* delete examples as we have UT now

* fix standards and add ut

* fix analyzer and add UT

* remove keywords fix and update UT

* biginteger using analyzer and tests

* initialize analyzer and unit test

* initialize analyzer and unit test

* use analyzer in examples

---------

Co-authored-by: Shargon <[email protected]>
* init

* rename

* format

* revert using

---------

Co-authored-by: Jimmy <[email protected]>
* Clean

* Clean

* Updated submodule neo

* Fix ut
* allowedBasicBlockEnds in OpCodeTypes

* extended basic block

* analyze everything in InstructionCoverage

* refactor for ContractInBasicBlocks

* fix jump to self

* comments

---------

Co-authored-by: Shargon <[email protected]>
shargon and others added 30 commits November 12, 2024 01:18
* Clean remarks and add ISTYPE information

* Add NEWARRAY_T
* Compiler info

* don't change logic

* use sequence-points-v2

* Optimization

* Fix dissasembler

* Use abi

* clean

* Optimization type

* Use debug type

* Remove V1 method detection, doesn't work without abi

* rename

* use TryParse

* Fix artifact

* Fix artifacts with Abi identification

* DebugInfoBuilder for sequence point v2 (#1237)

* DebugInfoBuilder for sequence point v2

* v2["optimization"]

* handle method["abi"]["offset"] in debugInfo

* apply code review

* Fix merge

* Fix merge

---------

Co-authored-by: Hecate2 <[email protected]>
* default value

* fix default value for property/fields

* fix unnecessary change.

* remove unnecessary

* Update src/Neo.Compiler.CSharp/MethodConvert/PropertyConvert.cs

* revert debug change

* revert debug chhange

* update artifacts

* Update tests/Neo.SmartContract.Framework.UnitTests/Services/BackedStorageTest.cs

* Update tests/Neo.SmartContract.Framework.UnitTests/Services/BackedStorageTest.cs

---------

Co-authored-by: Shargon <[email protected]>
* add ut for property

* fix non-static field get and set

* initialize with 0

* need instance constructor if non-static field exists

* add ut

---------

Co-authored-by: Jim8y <[email protected]>
Co-authored-by: Jimmy <[email protected]>
* nullable Storage.Get

* revert operator BigInteger(ByteString

* optimize framework contracts

* optimize IsValid for UInt160 & UInt256

* cancel is null with isValid

* cancel unnecessary pragma annotation

* update artifacts

* update gas

* update last gas

* Merge branch 'master' into pr/1214

# Conflicts:
#	tests/Neo.Compiler.CSharp.UnitTests/TestingArtifacts/Contract_Linq.cs
#	tests/Neo.Compiler.CSharp.UnitTests/TestingArtifacts/Contract_NEP11.cs
#	tests/Neo.Compiler.CSharp.UnitTests/TestingArtifacts/Contract_NEP17.cs
#	tests/Neo.SmartContract.Framework.UnitTests/TestingArtifacts/Contract_SupportedStandard11Enum.cs
#	tests/Neo.SmartContract.Framework.UnitTests/TestingArtifacts/Contract_SupportedStandard17Enum.cs
#	tests/Neo.SmartContract.Template.UnitTests/templates/neocontractnep17/TestingArtifacts/Nep17ContractTemplate.artifacts.cs
#	tests/Neo.SmartContract.Template.UnitTests/templates/neocontractowner/TestingArtifacts/OwnableTemplate.artifacts.cs

* revert IsValid

* Remove comments in UInt256.cs

* Remove comments in UInt160.cs

* revert TokenContract

* update artifacts

---------

Co-authored-by: Jimmy <[email protected]>
Co-authored-by: Shargon <[email protected]>
* load value in stack if not null

* update test artifacts

* add UT

* Update tests/Neo.SmartContract.Framework.TestContracts/Contract_Stored.cs

* update artifacts

---------

Co-authored-by: Jim8y <[email protected]>
Co-authored-by: Shargon <[email protected]>
* WriteInTryAnalzyer

* simple test for WriteInTryAnalzyer
* fix some compiler warnings

* Remove var

---------

Co-authored-by: Fernando Diaz Toledano <[email protected]>
Co-authored-by: Jimmy <[email protected]>
* fix & test WriteInTry analyzer

* handle THROW and ABORT
* remove line

* update more artifacts
* cancel more unnecessary constructor call

* delete ProcessFields

* update GAS

* Merge branch 'master' into pr/1260

* master:
  remove artifact opcodes line number (#1261)

# Conflicts:
#	tests/Neo.Compiler.CSharp.UnitTests/TestingArtifacts/Contract_Array.cs
#	tests/Neo.Compiler.CSharp.UnitTests/TestingArtifacts/Contract_ClassInit.cs
#	tests/Neo.Compiler.CSharp.UnitTests/TestingArtifacts/Contract_Foreach.cs
#	tests/Neo.Compiler.CSharp.UnitTests/TestingArtifacts/Contract_Initializer.cs
#	tests/Neo.Compiler.CSharp.UnitTests/TestingArtifacts/Contract_Instance.cs
#	tests/Neo.Compiler.CSharp.UnitTests/TestingArtifacts/Contract_Linq.cs
#	tests/Neo.Compiler.CSharp.UnitTests/TestingArtifacts/Contract_MemberAccess.cs
#	tests/Neo.Compiler.CSharp.UnitTests/TestingArtifacts/Contract_PostfixUnary.cs
#	tests/Neo.Compiler.CSharp.UnitTests/TestingArtifacts/Contract_PropertyMethod.cs
#	tests/Neo.Compiler.CSharp.UnitTests/TestingArtifacts/Contract_Record.cs
#	tests/Neo.Compiler.CSharp.UnitTests/TestingArtifacts/Contract_Recursion.cs
#	tests/Neo.Compiler.CSharp.UnitTests/TestingArtifacts/Contract_Tuple.cs
#	tests/Neo.Compiler.CSharp.UnitTests/TestingArtifacts/Contract_Types.cs
#	tests/Neo.SmartContract.Framework.UnitTests/TestingArtifacts/Contract_Storage.cs
#	tests/Neo.SmartContract.Framework.UnitTests/TestingArtifacts/Contract_Stored.cs

---------

Co-authored-by: Jim8y <[email protected]>
* Fix: disable some warnings in tests

* Update tests/Neo.SmartContract.Framework.TestContracts/Contract_Storage.cs

---------

Co-authored-by: Shargon <[email protected]>
* optimize construtor when initializer exists

* update GAS
* accelerate tests

* Update src/Neo.SmartContract.Testing/Coverage/CoverageHit.cs

* Update CoverageHit.cs

* bool tryDecodeOperand

* revert to simple description

* refactor CoverageHit

* Update CoverageHit.cs

* Update src/Neo.SmartContract.Testing/Coverage/CoverageHit.cs

---------

Co-authored-by: Shargon <[email protected]>
Co-authored-by: Jimmy <[email protected]>
* analyze whether contract can be updated

* Update src/Neo.Compiler.CSharp/SecurityAnalyzer/UpdateAnalyzer.cs

---------

Co-authored-by: Shargon <[email protected]>
* Skip ut

* Persist

* Next block
* fix inline for null body method

* fix return value issue for arrowexpression with return value.
* CheckWitnessAnalyzer

* UnitTest_CheckWitness

---------

Co-authored-by: Jimmy <[email protected]>
* fill all nef, manifest, debugInfo docs

* More docs about params
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.